package cn.lili.modules.goods.service;

import cn.lili.modules.goods.entity.dos.Wholesale;
import cn.lili.modules.goods.entity.dto.WholesaleDTO;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * 批发规则业务层
 *
 * @author paulG
 * @since 2022/5/24
 **/
public interface WholesaleService extends IService<Wholesale> {

    /**
     * 保存批发规则
     *
     * @param goodsId       商品ID
     * @param wholesaleDTOS 批发规则
     */
    void saveWholesale(String goodsId, List<WholesaleDTO> wholesaleDTOS);

    /**
     * 保存批发规则
     *
     * @param goodsId       商品ID
     * @param wholesaleDTOS 批发规则
     */
    void saveWholesaleOrg(String goodsId, List<Wholesale> wholesale);

    /**
     * 根据商品ID获取批发规则
     *
     * @param goodsId 商品ID
     * @return 批发规则
     */
    List<Wholesale> findByGoodsId(String goodsId);

    /**
     * 根据商品ID删除批发规则
     *
     * @param goodsId 商品ID
     * @return 是否删除成功
     */
    Boolean removeByGoodsId(String goodsId);

    /**
     * 匹配批发规则
     *
     * @param goodsId 商品规则
     * @param num     数量
     * @return 批发规则
     */
    Wholesale match(String goodsId, Integer num);


}
